encoder.py

Base class for Encoders used by the framework

class bashfuscator.core.mutators.encoder.Encoder(name, description, sizeRating, timeRating, binariesUsed=[], fileWrite=False, notes=None, author=None, credits=None, evalWrap=True, unreadableOutput=False)[source]

Bases: bashfuscator.core.mutators.mutator.Mutator

Base class for all Encoders. An Encoder is a Mutator that mutates the entire input given, so none of the input is visible after encoding.

Parameters:
  • name (str) – name of the Encoder
  • description (str) – short description of what the Encoder does
  • sizeRating (int) – rating from 1 to 5 of how effectively the Encoder increases the size of the overall payload
  • timeRating (int) – rating from 1 to 5 of how much the Encoder increases the execution time of the overall payload
  • binariesUsed (list of strs) – list of all the binaries the Encoder uses
  • fileWrite (bool) – True if the Encoder requires creating/writing to files, False otherwise
  • notes (str) – see bashfuscator.common.objects.Mutator
  • author (str) – see bashfuscator.common.objects.Mutator
  • credits (str) – see bashfuscator.common.objects.Mutator